/**
 * @description localStorage存取
 */
class Storage {
  /**
   * @description 获取缓存
   * @param name 缓存的名称
   */
  public get(name: string) {
    let val = JSON.parse(localStorage.getItem(name)!);
    // if(val?.expires > new Date().getTime()){
    //     // 有效期内返回
    //     return val;
    // }
    // return null;
    return val;
  }
  /**
   * @description 设置缓存
   * @param name 缓存的名称
   * @param value 缓存的值
   * @param expires 缓存的失效时间(选填)
   */
  public set(name: string, value: string, expires?: number) {
    let val = JSON.stringify({ value, expires: expires! + new Date().getTime() });
    localStorage.setItem(name, val);
  }
  /**
   * @description 删除缓存
   * @param name 缓存的名称
   */
  public remove(name: string) {
    localStorage.removeItem(name);
  }
}

export const storage = new Storage();
